#ifndef MATRIX_H
#define MATRIX_H

#include <QMainWindow>

namespace Ui {
class matrix;
}

class matrix : public QMainWindow
{
    Q_OBJECT

public:
    int n;
double**A;
double**B;
double**C;
double**a;
double**b;
double**c;
    explicit matrix(QWidget *parent = 0);
    ~matrix();
double t(int ,double**);
void step(int,double&,double**);
double det(int,double**&,double);
double rank(int,double**);
double**inverse(int,double**);
double**addition(int,double**,double**);
double**subtraction(int,double**,double**);
double**multiplication(int,double**,double**);
double**division(int,double**,double**);
public slots:
    void on_A00_editingFinished();
    void on_A01_editingFinished();
    void on_A02_editingFinished();
    void on_A03_editingFinished();
    void on_A04_editingFinished();
    void on_A10_editingFinished();
    void on_A11_editingFinished();
    void on_A12_editingFinished();
    void on_A13_editingFinished();
    void on_A14_editingFinished();
    void on_A20_editingFinished();
    void on_A21_editingFinished();
    void on_A22_editingFinished();
    void on_A23_editingFinished();
    void on_A24_editingFinished();
    void on_A30_editingFinished();
    void on_A31_editingFinished();
    void on_A32_editingFinished();
    void on_A33_editingFinished();
    void on_A34_editingFinished();
    void on_A40_editingFinished();
    void on_A41_editingFinished();
    void on_A42_editingFinished();
    void on_A43_editingFinished();
    void on_A44_editingFinished();
    void on_B00_editingFinished();
    void on_B01_editingFinished();
    void on_B02_editingFinished();
    void on_B03_editingFinished();
    void on_B04_editingFinished();
    void on_B10_editingFinished();
    void on_B11_editingFinished();
    void on_B12_editingFinished();
    void on_B13_editingFinished();
    void on_B14_editingFinished();
    void on_B20_editingFinished();
    void on_B21_editingFinished();
    void on_B22_editingFinished();
    void on_B23_editingFinished();
    void on_B24_editingFinished();
    void on_B30_editingFinished();
    void on_B31_editingFinished();
    void on_B32_editingFinished();
    void on_B33_editingFinished();
    void on_B34_editingFinished();
    void on_B40_editingFinished();
    void on_B41_editingFinished();
    void on_B42_editingFinished();
    void on_B43_editingFinished();
    void on_B44_editingFinished();
    void on_dim_editingFinished();


private slots:
    void on_A_clicked();

    void on_B_clicked();

    void on_Caculate_clicked();

    void on_AC_clicked();

private:
    Ui::matrix *ui;
};

#endif // MATRIX_H
